package demo1224.am;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/*
 字符流:
 字符输出流(Writer)
 字符输入流(Reader)
 FileWriter
 构造方法:
 1.public FileWriter(File file)
 2.public FileWriter(File file,boolean append)
 3.public FileWriter(String filename)
 4.public FileWriter(String filename,boolean append)

成员方法:
1.public void write(int c);写入单个字符
2.public void write(char[] cs);写入一个char数组到输出流中
3.public void write(char[] cs,int off,int len);把数组中一部分写入到输出流中
4.public void write(String s);把字符串s写入到输出流中.
5.public void write(String s,int off,int len);把字符串s的一部分写入到输出流中.

6.public void flush();把输出流中的字符刷新到硬盘中
7.public void close();关闭资源.

FileReader类:
public FileReader(String filename);
public FileReader(File file);
成员方法:
public int read();从文件中读取单个字符,返回读到的单个字符
public int read(char[] cs) ;
一次最多读取cs.length个字符到的字符存放在字符数组cs中,
返回的是存放在字符数组中的个数.

 */
public class Demo_01 {
    public static void main(String[] args) {
        try {
            FileReader fr = new FileReader("a.txt");
//            创建有一个char数组,存放读取的字符
            char[] cs = new char[4];
//            返回的是读取的个数
            int read ;
    // 每次读四个字符放到数组中，返回值不等于-1,打印读到的字符。再次读取四个字符，再打印输出，直到文件中没有字符可读，进不了循环
            // read: 读取的字符个数
            // cs：  读取到的字符  由空变不空

            while ((read = fr.read(cs))!=-1){
                System.out.print(new String(cs,0,read));
            }
            //关闭资源
            fr.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}
